home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Clinton - Portrait of Victory
/
PORTRAIT OF VICTORY.BIN
/
clntpc16
/
eagle33.txt
< prev
next >
Wrap
Text File
|
1992-12-28
|
10KB
|
559 lines
; The On the Road main menu
start33:
pload ehroa 1
cfade 9 0 414 p1
pfree 1
pload ecsq03 1
cfade 9 0 87 p1
pfree 1
pload ebcams 1
cfade 9 0 29 p1
pfree 1
if @tnum<>0
cload ebnav 1 1
cfade 9 0 0 1
cfree 1
endif
menu33:
set gonum 33
mn33:
waitkey
getkey k
if @k==1
set num 1
goto menu331
else
if @k==2
set title "ehpa03"
set tnum 59
set first 117
set last 175
set back "eagle33"
link eagle41
else
if @k==3
xbkg
set num 1
goto menu332
else
if @k==chr(104)||@k==chr(72)
goto help
else
if @k==chr(112)||@k==chr(80)
xbkg2
link eagle3 menubk
else
if @k==chr(101)||@k==chr(69)
xbkg
pload edexit 1
cfade 9 192 201 p1
pfree 1
mn33b:
waitkey
getkey k
if @k==chr(13)
exit
else
if @k==chr(27)
xbkg
pload ecsq03 1
cfade 9 0 87 p1
pfree 1
goto menu33
else
goto mn33b
endif
endif
else
goto mn33
endif
endif
endif
endif
endif
endif
; Photo and Audio Introduction selection display
menu331:
set gonum 331
set abort on
mn331:
pload menum 1
pfade 9 1
pfree 1
pload roap$@num 1
set px (639-p1->xsize)/2
if @px%8<>0
if @px%8<5
set px @px-(@px%8)
else
set px @px+(8-@px%8)
endif
endif
set py 67+((355-p1->ysize)/2)
cfade 9 @px @py p1
pfree 1
set m ""
if @num==1
cdplay 19 11
timer
waitkey 1100
endif
if @num==2
cdplay 20 14
timer
waitkey 1400
endif
if @num==3
cdplay 21 9
timer
waitkey 900
endif
if @num==4
cdplay 22 11
timer
waitkey 1100
endif
if @num==5
cdplay 23 14
timer
waitkey 1400
endif
if @num==6
cdplay 24 10
timer
waitkey 1000
endif
getkey m
xstop
cdstop
if @num==6
pload ebkg 1
pfade 9 1
pfree 1
set tnum 1
set abort off
goto start33
else
set num @num+1
goto mn331
endif
; Milestones text selection display
menu332:
set gonum 332
mn332:
pload etxtx 1
cfade 9 40 95 p1
pfree 1
color 15
fload times15 1
fgaps 1 5 3
set buf readfile(roamt$@num$.doc)
window 60 95 580 390
text @@buf
. farfree(@buf)
window
set center on
ffree 1
fload ibm8 1
text 0 115 "Page "$@num$" of 5"
text 0 105 "Press <PGUP> for next or <PGDN> for prior."
set center off
ffree 1
mn332b:
waitkey
getkey k
if @k==1
set num 1
goto menu331
else
if @k==2
set title "ehpa03"
set tnum 59
set first 117
set last 175
set back "eagle33"
link eagle41
else
if @k==chr(104)||@k==chr(72)
goto help
else
if @k==chr(112)||@k==chr(80)
xbkg2
link eagle3 menubk
else
if @k==chr(101)||@k==chr(69)
xbkg
pload edexit 1
cfade 9 192 201 p1
pfree 1
mn332c:
waitkey
getkey k
if @k==chr(13)
exit
else
if @k==chr(27)
xbkg
goto mn332
else
goto mn332c
endif
endif
else
if @k==chr(73)$chr(1)||@k==chr(72)$chr(1)
if @num==5
set num 1
goto mn332
else
set num @num+1
goto mn332
endif
else
if @k==chr(81)$chr(1)||@k==chr(80)$chr(1)
if @num==1
set num 5
goto mn332
else
set num @num-1
goto mn332
endif
else
goto mn332b
endif
endif
endif
endif
endif
endif
endif
help:
pload apatch 1
cfade 9 0 0 p1
pfree 1
pload eclbb 1
cfade 9 0 29 p1
pfree 1
xbkg
pload edhelp 1
cfade 9 32 74 p1
pfree 1
fload ibm8 1
fgaps 1 4 2
set buf readfile(roadhlp.doc)
window 65 345 575 100
color 1
text @@buf
. farfree(@buf)
window
ffree 1
hlp1:
waitkey
getkey k
if @k==chr(13)
if @gonum==33
xbkg
pload ecsq03 1
cfade 9 0 87 p1
pfree 1
pload ebcams 1
cfade 9 0 29 p1
pfree 1
cload ebnav 1 1
cfade 9 0 0 1
cfree 1
goto menu33
else
xbkg
pload ebcams 1
cfade 9 0 29 p1
pfree 1
cload ebnav 1 1
cfade 9 0 0 1
cfree 1
goto menu$@gonum
endif
else
goto hlp1
endif
xbkg:
cload ebkgx 1 1
cfade 9 0 68 1
cfree 1
return
xbkg2:
pload eclbb 1
cfade 9 0 29 p1
pfree 1
cload ebkgx 1 1
cfade 9 0 68 1
cfree 1
pload eclhx 1
cfade 9 0 414 p1
pfree 1
return
xStop:
if len(@m)
cdstop
pload ebkg 1
pfade 9 1
pfree 1
set tnum 1
set abort off
pop start33
else
return
endif
;
; CDINIT
;
; Check for CD-ROM driver and setup @drive
;
cdinit:
int 0x2f 0x1500,0
if @bx
global drive chr(@cx+asc("A"))
else
global drive ""
endif
return
cdplay:
cdtrack @1 @3 @4 @5
cdcmd 132,@0,@2*75
cdcheck @0,cdplay
return
;
; CDPLAYTO TRACK MINUTES SECONDS FRAMES TRACK MINUTES SECONDS FRAMES
;
;
cdplayto:
cdtrack @1 @2 @3 @4
local begin @0
cdtrack @5 @6 @7 @8
local end @0
cdcmd 132,@begin,@end-@begin
cdcheck @0,cdplayto
return
;
; CDSTOP
;
; Stop playing immediately
;
cdstop:
cdcmd 133,0,0
cdcheck @0,cdstop
return
;
; CDRESUME
;
; Resume playing from where we issued a CDSTOP
;
cdresume:
cdcmd 136,0,0
cdcheck @0,cdresume
return
;
; CDSEEK TRACK {MINUTES SECONDS FRAMES}
;
; Seek the CD player head to a track to minimize play startup time.
; Parameters are the same as CDPLAY.
;
cdseek:
cdtrack @1 @2 @3 @4
cdcmd 131,@0,0
cdcheck @0,cdseek
return
;
; CDEJECT
;
; Open the CD drive's tray/door
;
cdeject:
local buf ofs("1")
local bseg seg(@buf);
poke @bseg @buf 0 ;Eject Disk
cdcmd 12,@buf|(@bseg<<16),1 ;WRITE IOCTL Output
cdcheck @0,cdeject
return
;
; CDCLOSE
;
; Close the CD drive's tray/door
;
cdclose:
local buf ofs("1")
local bseg seg(@buf);
poke @bseg @buf 5 ;Close Tray
cdcmd 12,@buf|(@bseg<<16),1 ;WRITE IOCTL Output
cdcheck @0,cdclose
return
;
; CDSTATUS
;
; Return CD Drive status and setup global variables @first and @last
;
cdstatus:
local buf ofs("123456")
local bseg seg(@buf);
poke @bseg @buf 10 ;Audio Disk Info
cdcmd 3,@buf|(@bseg<<16),6 ;READ IOCTL Input
cdcheck @0,cdstatus
global first peek(@bseg,@buf+1)+0
global last peek(@bseg,@buf+2)+0
poke @bseg @buf 6 ;Device status
cdcmd 3,@buf|(@bseg<<16),5 ;READ IOCTL Input
cdcheck @0,cdstatus
return peekl(@bseg,@buf+1)
;
; CDTRACK TRACK MINUTES SECONDS FRAMES
;
; Return the absolute sector number of a track
;
cdtrack:
local buf ofs("1234567")
local bseg seg(@buf);
poke @bseg @buf 11 ;Get Audio Track Info
poke @bseg @buf+1 @1 ;track number
cdcmd 3,@buf|(@bseg<<16),7 ;READ IOCTL Input
cdcheck @0,cdtrack
return peekl(@bseg,@buf+2)+(@2*60+@3)*75+@4 ;return track address
cdcmd:
local req ofs("12345678901234567890123456")
local rseg seg(@req)
poke @rseg @req 13 ;param length
poke @rseg @req+1 0 ;subunit
poke @rseg @req+2 @1 ;command code
pokew @rseg @req+3 0 ;status
pokel @rseg @req+5 0 0 ;reserved
poke @rseg @req+13 1 ;address mode
pokel @rseg @req+14 @2 ;begin
pokel @rseg @req+18 @3 ;length
pokel @rseg @req+22 0 ;reserved
int 0x2f 0x1510,@req,asc(@drive)-asc("A"),,,,,seg(@req)
if peek(@rseg,@req+4)&0x80
databegin
"Unknown Error"
"Write-protect violation"
"Unknown unit"
"Drive not Ready"
"Unknown command"
"CRC error"
"Bad drive request structure length"
"Seek Error"
"Unknown media"
"Sector not found"
"Printer out of paper"